#include <iostream>
#include <stack>
#include <queue>
using namespace std;

// void test()
// {
//     stack<int> s;
//     s.push(1);
//     s.push(2);
//     s.push(3);
//     s.push(4);
//     s.push(5);

//     while(!s.empty())
//     {
//         cout << s.top() << endl;
//         s.pop();
//     }
// }



void test()
{
    //priority_queue<int> pq;//大堆
    priority_queue<int,vector<int>,greater<int>> pq;//小堆
    pq.push(1);
    pq.push(5);
    pq.push(7);
    pq.push(4);
    pq.push(2);
    pq.push(6);
    pq.push(3);
    while(!pq.empty())
    {
        cout << pq.top() << endl;
        pq.pop();
    }
}


int main()
{
    test();
    return 0;
}



